<?php
class AlimentosController extends AppController {

	var $name = 'Alimentos';
	var $uses = array('UsersEquiposOperativo','Alimento','EquiposOperativo','User', 'Zona');
	var $helpers = array('Alimento', 'Access');

	function index(){
		$usuario_activo = $this->Access->getMy('username');
		//Verificacion de sesion del sistema		
		if(!$usuario_activo){
			$this->Session->setFlash(__('Por favor inicie sesion', true));
			$this->redirect(array('controller'=>'users','action' => 'login'));
		}
		$group_id= $this->Access->getMy('group_id');
		$user_id= $this->Access->getMy('id');
		$eo= $this->UsersEquiposOperativo->find('first',array('conditions'=>array('UsersEquiposOperativo.user_id'=>$user_id)));
		$zona_id=$this->Zona->find('all',array('conditions'=>array('Zona.id'=>$eo['EquiposOperativo']['zona_id'])));
		if($group_id=="1"){ //Si es administrador
			$zona_id = $this->Zona->find('all');							
		}
		
		$this->set(compact('zona_id'));		
	}

	function view($id = null) {
		$usuario_activo = $this->Access->getMy('username');
		//Verificacion de sesion del sistema		
		if(!$usuario_activo){
			$this->Session->setFlash(__('Por favor inicie sesion', true));
			$this->redirect(array('controller'=>'users','action' => 'login'));
		}
		if (!$id) {
			$this->Session->setFlash(__('Invalid alimento', true));
			$this->redirect(array('action' => 'index'));
		}
		$this->set('alimento', $this->Alimento->read(null, $id));
	}

	function add($mes=null, $year=null, $zona_id=null) {
		$usuario_activo = $this->Access->getMy('username');
		//Verificacion de sesion del sistema		
		if(!$usuario_activo){
			$this->Session->setFlash(__('Por favor inicie sesion', true));
			$this->redirect(array('controller'=>'users','action' => 'login'));
		}
		if (!empty($this->data)) {
			$form = $this->data;			
			if(is_array($form['user_id'])) {								
				foreach ($form['user_id'] as $tutor){					
					$bebida_lactea = (!empty($form['bebida_lactea'][$tutor])) ? $form['bebida_lactea'][$tutor] : '0';
					$jugo = (!empty($form['jugo'][$tutor])) ? $form['jugo'][$tutor] : '0';
					$cereal = (!empty($form['cereal'][$tutor])) ? $form['cereal'][$tutor] : '0';
					$carbohidrato = (!empty($form['carbohidrato'][$tutor])) ? $form['carbohidrato'][$tutor] : '0';
					$fruta = (!empty($form['fruta'][$tutor])) ? $form['fruta'][$tutor] : '0';
					$otros = (!empty($form['otro'][$tutor])) ? $form['otro'][$tutor] : NULL;					
					$calidad = ($form['calidad'][$tutor]['0']== 0) ? 'Bueno' : 'Regular';
					$observacion = (!empty($form['observacion'][$tutor])) ? $form['observacion'][$tutor] : NULL;					

					$registro['Alimento']= array('mes'=>$form['mes'],'user_id'=>$tutor,'zona_id'=>$form['zona_id'],
											'bebida_lactea'=>$bebida_lactea,'jugo'=>$jugo,'cereal'=>$cereal, 
											'carbohidrato'=>$carbohidrato, 'fruta'=>$fruta, 'otro'=>$otros, 'calidad'=>$calidad,
											'observacion'=>$observacion);
					
					$this->Alimento->create();					
					$this->Alimento->save($registro);										
				}
				$this->Session->setFlash(__('Los alimentos han sido guardados', true));
				$this->redirect(array('action' => 'index'));
			}else {
				$this->Session->setFlash(__('Los alimentos no han sido guardados', true));
			}
		}	
		
		$eo = $this->EquiposOperativo->find('first',array('fields'=>'EquiposOperativo.id','conditions'=>array('EquiposOperativo.zona_id'=>$zona_id)));
				
		$eo=$eo['EquiposOperativo']['id'];
		$tutores=$this->UsersEquiposOperativo->find('list',array('fields'=>'UsersEquiposOperativo.user_id',
							'conditions'=>array('UsersEquiposOperativo.equipos_operativo_id'=>$eo, 
							'AND'=>array('UsersEquiposOperativo.group_id'=>'2'))));
			
		$tutor=$this->User->find('all',array('fields'=>array('User.nombre_completo','User.id'),'conditions'=>array('User.id'=>$tutores)));
		
		$fecha = $year."-".$mes;		
			
		$this->set(compact('zona_id', 'tutor','eo','fecha'));
	}

	function edit($mes=null, $year=null, $zona_id = null){
		$usuario_activo = $this->Access->getMy('username');
		//Verificacion de sesion del sistema		
		if(!$usuario_activo){
			$this->Session->setFlash(__('Por favor inicie sesion', true));
			$this->redirect(array('controller'=>'users','action' => 'login'));
		}
		if (!$zona_id && empty($this->data)) {
			$this->Session->setFlash(__('Alimento Invalido', true));
			$this->redirect(array('action' => 'index'));
		}
		if (!empty($this->data)) {
			$form = $this->data;			
			if(is_array($form['user_id'])) {
				foreach ($form['user_id'] as $tutor){							
					$bebida_lactea = (!empty($form['bebida_lactea'][$tutor])) ? $form['bebida_lactea'][$tutor] : '0';
					$jugo = (!empty($form['jugo'][$tutor])) ? $form['jugo'][$tutor] : '0';
					$cereal = (!empty($form['cereal'][$tutor])) ? $form['cereal'][$tutor] : '0';
					$carbohidrato = (!empty($form['carbohidrato'][$tutor])) ? $form['carbohidrato'][$tutor] : '0';
					$fruta = (!empty($form['fruta'][$tutor])) ? $form['fruta'][$tutor] : '0';
					$otros = (!empty($form['otro'][$tutor])) ? $form['otro'][$tutor] : NULL;					
					$calidad = ($form['calidad'][$tutor]['0']== 0) ? 'Bueno' : 'Regular';
					$observacion = (!empty($form['observacion'][$tutor])) ? $form['observacion'][$tutor] : NULL;					
					
					$this->Alimento->id = $form['tutors'][$tutor];
					
					$this->Alimento->saveField('bebida_lactea',$bebida_lactea);
					$this->Alimento->saveField('jugo',$jugo);
					$this->Alimento->saveField('cereal',$cereal);
					$this->Alimento->saveField('carbohidrato',$carbohidrato);
					$this->Alimento->saveField('fruta',$fruta);
					$this->Alimento->saveField('otro',$otros);
					$this->Alimento->saveField('calidad',$calidad);
					$this->Alimento->saveField('observacion',$observacion);															
				}
				$this->Session->setFlash(__('The alimento has been saved', true));
				$this->redirect(array('action' => 'index'));
			}
		}
		if (empty($this->data)) {
			$this->data = $this->Alimento->read(null, $zona_id);
		}
		
		$mes = $year."-".$mes;	
		$tutores = $this->Alimento->find('all',array('conditions'=>array('Alimento.mes'=>$mes, 'AND'=>array('Alimento.zona_id'=>$zona_id))));
		
		$this->set(compact('zona_id', 'mes', 'zona_id', 'tutores'));
	}

	function delete($id = null) {
		$usuario_activo = $this->Access->getMy('username');
		//Verificacion de sesion del sistema		
		if(!$usuario_activo){
			$this->Session->setFlash(__('Por favor inicie sesion', true));
			$this->redirect(array('controller'=>'users','action' => 'login'));
		}
		if (!$id) {
			$this->Session->setFlash(__('Invalid id for alimento', true));
			$this->redirect(array('action'=>'index'));
		}
		if ($this->Alimento->delete($id)) {
			$this->Session->setFlash(__('Alimento deleted', true));
			$this->redirect(array('action'=>'index'));
		}
		$this->Session->setFlash(__('Alimento was not deleted', true));
		$this->redirect(array('action' => 'index'));
	}
}
?>